1. Technical Field of the Invention
The present invention relates to data communication networks. The present invention is especially applicable for the delivery of data packets of a data stream from a transmitting device to a receiving device.
2. Description of the Background Art
Data communication networks have shown to be unreliable because of transmission errors, congestions or temporary link outage, which cause loss of data packets. Many data networks like IP (Internet Protocol) networks or ATM (Asynchronous Transfer Mode) comprise interconnection nodes (routers, switches, etc.) to route data packets from source devices to destination devices. In this type of network, congestion is the main source of losses because reception buffers at the interconnection nodes are not sized to absorb severe traffic loads or because different data streams served by a given interconnection node have to pass through a same link with insufficient capacity. Surplus data packets are finally discarded by the interconnection nodes. Moreover, IP networks implementing congestion control mechanisms of type TFRC (TCP Friendly Rate Control, IETF RFC3448) or AIMD (Additive Increase/Multiplicative Decrease, IETF RFC2581) produce by nature a plurality of congestions even if they are of short duration.
When a congestion occurs, interconnection nodes drop more or less data packets to keep the filling level of the reception buffers under an acceptable threshold.
It is known from the prior art that the discarding of data without consideration as to the importance of the data can have serious negative consequences for certain types of data transmissions such as video streams.
In US2005/0021806, Richardson et al. teach to associate priority levels to data streams wherein a higher priority level being assigned to data type of high importance and a lower priority level being assigned to data type of low importance, the importance depending on the content of the data. Consequently, when congestion in the network causes data to be dropped, data of the stream of a data type that is of less importance is dropped before data of the stream of a data type that is of a greater importance.
However, even if data of high importance is not likely to be dropped during congestion by its association to a high priority level, rendering of the data stream at the destination device after a congestion is still degraded because of the absence of low importance data.
There is a need to reduce the effect of dropped data packets on the quality of the rendered data stream at the destination device.